package com.yanqu.road.entity.activity.seacraft.pirateriot.config;

import com.yanqu.road.entity.activity.ActivityInfo;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

public class SeacraftPirateRiotConfig {

    private ActivityInfo activityInfo;

    // 海盗之乱开启时间 下标对应
    private long pirateRiotBeginTime;
    private long pirateRiotEndTime;

    // 道具ID
    private int scoreItemId;
    private int energyItemId;

    // 方块
    private int blockDamage;
    private int blockMp; // 一个方块加的能量
    private List<Integer> blockDamageAdditionList; // 连消伤害加成，超出就取最后一个
    private int[] initBlock;
    private List<Integer> baseWeightList;
    private List<Integer> weightAddiList;
    private int deadDamagePercent; // 阵亡时方块伤害 = 存活时伤害 * 这个比例

    // 体力
    private int maxEnergy;
    private long energyRecTime; // 毫秒
    private int energyRecCount;

    // 出战
    private List<Integer> patronsAttackParam;
    private List<Integer> patronsHpParam;
    private Map<Integer, SeacraftPirateRiotEquipConfig> equipConfigMap;

    // 技能
    private long patronsMaxMp;
    private long patronsInitMp;
    private Map<Integer, SeacraftPirateRiotSkillConfig> skillConfigMap;

    // 关卡
    private long sectionRewardMp;
    private Map<Integer, SeacraftPirateRiotChapterConfig> chapterConfigMap;
    private Map<Integer, Map<Integer, SeacraftPirateRiotSectionConfig>> sectionConfigMap;
    private Map<Integer, SeacraftPirateRiotMonsterConfig> monsterConfigMap;
    private List<Integer> autoPassParamList = new ArrayList<>();

    public int getDeadDamagePercent() {
        return deadDamagePercent;
    }

    public void setDeadDamagePercent(int deadDamagePercent) {
        this.deadDamagePercent = deadDamagePercent;
    }

    public List<Integer> getAutoPassParamList() {
        return autoPassParamList;
    }

    public void setAutoPassParamList(List<Integer> autoPassParamList) {
        this.autoPassParamList = autoPassParamList;
    }

    public Map<Integer, SeacraftPirateRiotEquipConfig> getEquipConfigMap() {
        return equipConfigMap;
    }

    public void setEquipConfigMap(Map<Integer, SeacraftPirateRiotEquipConfig> equipConfigMap) {
        this.equipConfigMap = equipConfigMap;
    }

    public long getPatronsMaxMp() {
        return patronsMaxMp;
    }

    public void setPatronsMaxMp(long patronsMaxMp) {
        this.patronsMaxMp = patronsMaxMp;
    }

    public long getPatronsInitMp() {
        return patronsInitMp;
    }

    public void setPatronsInitMp(long patronsInitMp) {
        this.patronsInitMp = patronsInitMp;
    }

    public ActivityInfo getActivityInfo() {
        return activityInfo;
    }

    public void setActivityInfo(ActivityInfo activityInfo) {
        this.activityInfo = activityInfo;
    }

    public Map<Integer, SeacraftPirateRiotSkillConfig> getSkillConfigMap() {
        return skillConfigMap;
    }

    public void setSkillConfigMap(Map<Integer, SeacraftPirateRiotSkillConfig> skillConfigMap) {
        this.skillConfigMap = skillConfigMap;
    }

    public int getScoreItemId() {
        return scoreItemId;
    }

    public void setScoreItemId(int scoreItemId) {
        this.scoreItemId = scoreItemId;
    }

    public int getEnergyItemId() {
        return energyItemId;
    }

    public void setEnergyItemId(int energyItemId) {
        this.energyItemId = energyItemId;
    }

    public int getBlockDamage() {
        return blockDamage;
    }

    public void setBlockDamage(int blockDamage) {
        this.blockDamage = blockDamage;
    }

    public int getBlockMp() {
        return blockMp;
    }

    public void setBlockMp(int blockMp) {
        this.blockMp = blockMp;
    }

    public List<Integer> getBlockDamageAdditionList() {
        return blockDamageAdditionList;
    }

    public void setBlockDamageAdditionList(List<Integer> blockDamageAdditionList) {
        this.blockDamageAdditionList = blockDamageAdditionList;
    }

    public int getMaxEnergy() {
        return maxEnergy;
    }

    public void setMaxEnergy(int maxEnergy) {
        this.maxEnergy = maxEnergy;
    }

    public long getEnergyRecTime() {
        return energyRecTime;
    }

    public void setEnergyRecTime(long energyRecTime) {
        this.energyRecTime = energyRecTime;
    }

    public int getEnergyRecCount() {
        return energyRecCount;
    }

    public void setEnergyRecCount(int energyRecCount) {
        this.energyRecCount = energyRecCount;
    }

    public Map<Integer, SeacraftPirateRiotChapterConfig> getChapterConfigMap() {
        return chapterConfigMap;
    }

    public void setChapterConfigMap(Map<Integer, SeacraftPirateRiotChapterConfig> chapterConfigMap) {
        this.chapterConfigMap = chapterConfigMap;
    }

    public Map<Integer, Map<Integer, SeacraftPirateRiotSectionConfig>> getSectionConfigMap() {
        return sectionConfigMap;
    }

    public void setSectionConfigMap(Map<Integer, Map<Integer, SeacraftPirateRiotSectionConfig>> sectionConfigMap) {
        this.sectionConfigMap = sectionConfigMap;
    }

    public Map<Integer, SeacraftPirateRiotMonsterConfig> getMonsterConfigMap() {
        return monsterConfigMap;
    }

    public void setMonsterConfigMap(Map<Integer, SeacraftPirateRiotMonsterConfig> monsterConfigMap) {
        this.monsterConfigMap = monsterConfigMap;
    }

    public long getPirateRiotBeginTime() {
        return pirateRiotBeginTime;
    }

    public void setPirateRiotBeginTime(long pirateRiotBeginTime) {
        this.pirateRiotBeginTime = pirateRiotBeginTime;
    }

    public long getPirateRiotEndTime() {
        return pirateRiotEndTime;
    }

    public void setPirateRiotEndTime(long pirateRiotEndTime) {
        this.pirateRiotEndTime = pirateRiotEndTime;
    }

    public int[] getInitBlock() {
        return initBlock;
    }

    public void setInitBlock(int[] initBlock) {
        this.initBlock = initBlock;
    }

    public List<Integer> getBaseWeightList() {
        return baseWeightList;
    }

    public void setBaseWeightList(List<Integer> baseWeightList) {
        this.baseWeightList = baseWeightList;
    }

    public List<Integer> getWeightAddiList() {
        return weightAddiList;
    }

    public void setWeightAddiList(List<Integer> weightAddiList) {
        this.weightAddiList = weightAddiList;
    }

    public List<Integer> getPatronsAttackParam() {
        return patronsAttackParam;
    }

    public void setPatronsAttackParam(List<Integer> patronsAttackParam) {
        this.patronsAttackParam = patronsAttackParam;
    }

    public List<Integer> getPatronsHpParam() {
        return patronsHpParam;
    }

    public void setPatronsHpParam(List<Integer> patronsHpParam) {
        this.patronsHpParam = patronsHpParam;
    }

    public long getSectionRewardMp() {
        return sectionRewardMp;
    }

    public void setSectionRewardMp(long sectionRewardMp) {
        this.sectionRewardMp = sectionRewardMp;
    }
}
